package com.meida.module.system.provider.service;

import com.meida.common.mybatis.base.service.IBaseService;
import com.meida.common.mybatis.entity.EntityMap;
import com.meida.common.mybatis.model.ResultBody;
import com.meida.common.mybatis.query.CriteriaQuery;
import com.meida.common.mybatis.query.CriteriaUpdate;
import com.meida.module.system.client.entity.SysCompany;

import java.util.List;
import java.util.Map;

/**
 * 企业表 服务类
 *
 * @author flyme
 * @date 2019-06-02
 */
public interface SysCompanyService extends IBaseService<SysCompany> {


    /**
     * 企业认证
     *
     * @param cu
     */
    ResultBody identification(CriteriaUpdate<SysCompany> cu);

    /**
     * 检测企业是否注册
     *
     * @param companyName
     */
    Boolean checkByCompanyName(String companyName, String businessLicNo);

    Boolean updateVisitCount(Long companyId, Integer num);
    ResultBody updateLookCount(Long companyId, Integer num);


    /**
     * 查询最新推荐企业
     */
    List<EntityMap> listRecommend(CriteriaQuery cq, int count, boolean collecon, String companyType);

    /**
     * 企业认证审核
     *
     * @param map
     * @return
     */
    ResultBody setAuditState(Map map);

    /**
     * 重置认证状态
     *
     * @param companyId
     * @return
     */
    ResultBody resetAuditState(Long companyId);

    /**
     * 设置推荐状态
     *
     * @param ids
     * @param recommend
     * @return
     */
    ResultBody setRecommend(Long[] ids, Integer recommend);

    SysCompany getManagerId(Long managerId);

    int totalCount(Map map,Integer auditState);


}
